#ifndef RAT_RESOURCEMANAGER_H
#define RAT_RESOURCEMANAGER_H

#include <vector>
#include <string>
#include <fstream>
#include <iostream>
#include <cstdlib>
#include <sstream>

#include "RAT_CustomMesh.h"
#include "RAT_CustomVertex.h"

namespace RAT_ENGINE
{
	class RAT_ResourceManager
	{
	public:
		RAT_ResourceManager();
		~RAT_ResourceManager();
		
		void Init();
		void Init(std::string argResourceFileURL);
		void CleanUp();

		RAT_CustomMesh* GetCustomMesh(const int ID) const;
		RAT_CustomMesh* GetCustomMesh(const std::string argMeshFileURL) const;
		
		std::vector<RAT_CustomMesh*> GetCustomMeshes() const;

		void AddCustomMesh( RAT_CustomMesh* argMesh);

		void PrintIO();
	private:
		std::vector<RAT_CustomMesh*> customMeshes;

		void LoadCustomMesh(const std::string argMeshFileURL);
	};
}

#endif